package cn.jsj.invite.service;

import cn.jsj.invite.pojo.EnterpriseEnt;
import cn.jsj.invite.pojo.InvitationInfo;
import cn.jsj.invite.pojo.StudentEnt;
import com.github.pagehelper.PageInfo;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

@Validated
public interface EnterpriseService {


    /**
     * 企业人员注册
     *
     * @param info 注册信息
     * @return 成功1，否则0
     */
    int register(EnterpriseEnt info);

    /**
     * 企业人员发帖
     *
     * @param info  帖子信息
     * @param photo 帖子图片
     * @return 成功1，否则0
     */
    int publishEnterpriseInvitation(InvitationInfo info, MultipartFile[] photo);

    /**
     * 根据企业ID查询所有
     *
     * @param enterpriseId 企业ID
     * @return 帖子信息集合
     */
    List<InvitationInfo> listEnterpriseInvitation(Integer enterpriseId);


    /**
     * 企业修改密码 根据id以及旧密码
     *
     * @param oldPassword 旧密码
     * @param newPassword 新密码
     * @param id          企业ID
     * @return 1：成功 0：失败
     */
    int updatePasswordById(String oldPassword, String newPassword, int id);

    /**
     * 企业查看有意向与企业联系的学生
     *
     * @param schoolId   学校ID
     * @param pageNumber 页号
     * @return 学生信息对象
     */
    PageInfo<StudentEnt> listStudentIsOpen(Integer schoolId, Integer pageNumber);

    /**
     * 企业删除帖子
     *
     * @param pageId 帖子ID
     * @return 成功1，否则0
     */
    Integer removeOnePageById(Integer pageId);

    /**
     * 企业人员信息
     * @param enterpriseEnt 企业人员信息对象
     * @return 成功1，否则0
     */
    Integer updateEnterpriseInfo(EnterpriseEnt enterpriseEnt);


}
